Crate yaml_rust2

source ·
Expand description

YAML 1.2 implementation in pure Rust.

§Usage

This crate is on github and can be used by adding yaml-rust2 to the dependencies in your project’s Cargo.toml.

[dependencies]
yaml-rust2 = "0.8.1"

§Examples

Parse a string into Vec<Yaml> and then serialize it as a YAML string.

use yaml_rust2::{YamlLoader, YamlEmitter};

let docs = YamlLoader::load_from_str("[1, 2, 3]").unwrap();
let doc = &docs[0]; // select the first YAML document
assert_eq!(doc[0].as_i64().unwrap(), 1); // access elements by index

let mut out_str = String::new();
let mut emitter = YamlEmitter::new(&mut out_str);
emitter.dump(doc).unwrap(); // dump the YAML object to a String

§Features

Note: With all features disabled, this crate’s MSRV is 1.65.0.

§encoding (enabled by default)

Enables encoding-aware decoding of Yaml documents.

The MSRV for this feature is 1.70.0.

§debug_prints

Enables the debug module and usage of debug prints in the scanner and the parser. Do not enable if you are consuming the crate rather than working on it as this can significantly decrease performance.

The MSRV for this feature is 1.70.0.

Re-exports§

Modules§

  • YAML serialization helpers.
  • Home to the YAML Parser.
  • Home to the YAML Scanner.
  • YAML objects manipulation utilities.